366 research outputs found
Sequential products in effect categories
A new categorical framework is provided for dealing with multiple arguments
in a programming language with effects, for example in a language with
imperative features. Like related frameworks (Monads, Arrows, Freyd
categories), we distinguish two kinds of functions. In addition, we also
distinguish two kinds of equations. Then, we are able to define a kind of
product, that generalizes the usual categorical product. This yields a powerful
tool for deriving many results about languages with effects
Patterns for computational effects arising from a monad or a comonad
This paper presents equational-based logics for proving first order
properties of programming languages involving effects. We propose two dual
inference system patterns that can be instanciated with monads or comonads in
order to be used for proving properties of different effects. The first pattern
provides inference rules which can be interpreted in the Kleisli category of a
monad and the coKleisli category of the associated comonad. In a dual way, the
second pattern provides inference rules which can be interpreted in the
coKleisli category of a comonad and the Kleisli category of the associated
monad. The logics combine a 3-tier effect system for terms consisting of pure
terms and two other kinds of effects called 'constructors/observers' and
'modifiers', and a 2-tier system for 'up-to-effects' and 'strong' equations.
Each pattern provides generic rules for dealing with any monad (respectively
comonad), and it can be extended with specific rules for each effect. The paper
presents two use cases: a language with exceptions (using the standard monadic
semantics), and a language with state (using the less standard comonadic
semantics). Finally, we prove that the obtained inference system for states is
Hilbert-Post complete
Technologies de transformation de la noix de coco adaptables à Ouvéa. Etude réalisée à la demande de l'ERPA
Ce rapport fait suite à la demande d'étude de l'ERPA pour la détermination des technologies de valorisation de la noix de coco adaptables sur l'île d'Ouvéa, compte tenu des structures locales d'exploitation et de la taille du marché territorial. Il fait également suite à la mission CIRAD de décembre 91. Le potentiel de production de coprah sur l'île d'Ouvéa est défini, en référence aux nombreuses études sur ce sujet. On souligne que l'activité savonnerie, débouché d'importance vitale pour le coprah, doit être conservée dans une structure à définir. On recommande une mission d'évaluation pour l'utilisation de l'huile de coco brute comme carburant. Le procédé de séchage-friture appliqué à la fabrication d'huile alimentaire, fait l'objet d'une demande de financement CORDET 92. On envisage le développement du projet en Nouvelle Calédonie à l'aide de plusieurs missions de soutien
Breaking a monad-comonad symmetry between computational effects
Computational effects may often be interpreted in the Kleisli category of a
monad or in the coKleisli category of a comonad. The duality between monads and
comonads corresponds, in general, to a symmetry between construction and
observation, for instance between raising an exception and looking up a state.
Thanks to the properties of adjunction one may go one step further: the
coKleisli-on-Kleisli category of a monad provides a kind of observation with
respect to a given construction, while dually the Kleisli-on-coKleisli category
of a comonad provides a kind of construction with respect to a given
observation. In the previous examples this gives rise to catching an exception
and updating a state. However, the interpretation of computational effects is
usually based on a category which is not self-dual, like the category of sets.
This leads to a breaking of the monad-comonad duality. For instance, in a
distributive category the state effect has much better properties than the
exception effect. This remark provides a novel point of view on the usual
mechanism for handling exceptions. The aim of this paper is to build an
equational semantics for handling exceptions based on the coKleisli-on-Kleisli
category of the monad of exceptions. We focus on n-ary functions and
conditionals. We propose a programmer's language for exceptions and we prove
that it has the required behaviour with respect to n-ary functions and
conditionals.Comment: arXiv admin note: substantial text overlap with arXiv:1310.060
TEMPOS: A Platform for Developing Temporal Applications on Top of Object DBMS
This paper presents TEMPOS: a set of models and languages supporting the manipulation of temporal data on top of object DBMS. The proposed models exploit object-oriented technology to meet some important, yet traditionally neglected design criteria related to legacy code migration and representation independence. Two complementary ways for accessing temporal data are offered: a query language and a visual browser. The query language, namely TempOQL, is an extension of OQL supporting the manipulation of histories regardless of their representations, through fully composable functional operators. The visual browser offers operators that facilitate several time-related interactive navigation tasks, such as studying a snapshot of a collection of objects at a given instant, or detecting and examining changes within temporal attributes and relationships. TEMPOS models and languages have been formalized both at the syntactical and the semantical level and have been implemented on top of an object DBMS. The suitability of the proposals with regard to applications' requirements has been validated through concrete case studies
Decorated proofs for computational effects: Exceptions
We define a proof system for exceptions which is close to the syntax for
exceptions, in the sense that the exceptions do not appear explicitly in the
type of any expression. This proof system is sound with respect to the intended
denotational semantics of exceptions. With this inference system we prove
several properties of exceptions.Comment: 11 page
A Universalist strategy for the design of Assistive Technology
Assistive Technologies are specialized products aiming to partly compensate for the loss of autonomy experienced by disabled people. Because they address special needs in a highly-segmented market, they are often considered as niche products. To improve their design and make them tend to Universality, we propose the EMFASIS framework (Extended Modularity, Functional Accessibility, and Social Integration Strategy). We first elaborate on how this strategy conciliates niche and Universalist views, which may appear conflicting at first sight. We then present three examples illustrating its application for designing Assistive Technologies: the design of an overbed table, an upper-limb powered orthose and a powered wheelchair. We conclude on the expected outcomes of our strategy for the social integration and participation of disabled people
A duality between exceptions and states
In this short note we study the semantics of two basic computational effects,
exceptions and states, from a new point of view. In the handling of exceptions
we dissociate the control from the elementary operation which recovers from the
exception. In this way it becomes apparent that there is a duality, in the
categorical sense, between exceptions and states
States and exceptions considered as dual effects
In this paper we consider the two major computational effects of states and
exceptions, from the point of view of diagrammatic logics. We get a surprising
result: there exists a symmetry between these two effects, based on the
well-known categorical duality between products and coproducts. More precisely,
the lookup and update operations for states are respectively dual to the throw
and catch operations for exceptions. This symmetry is deeply hidden in the
programming languages; in order to unveil it, we start from the monoidal
equational logic and we add progressively the logical features which are
necessary for dealing with either effect. This approach gives rise to a new
point of view on states and exceptions, which bypasses the problems due to the
non-algebraicity of handling exceptions
- …